==硬件规格 Hardware Specifications==
* CPU: Intel Atom x6425RE, 4c4t
* RAM: 16GiB 3200MHz on board
* Ethernet: 3x Intel I210 Gigabit Ethernet controller

==操作系统 OS==
至少需要 Debian 12 或 Ubuntu 22.04，并支持完整的图形界面。

Ubuntu 16.04 仅支持控制台（服务器版本）。需要安装 4.15 或更高版本的内核来安装修改过的 gpio-f7188x 驱动程序。（交付时已包含）

Requires a minimum of Debian 12 or Ubuntu 22.04, both supporting a complete graphical user interface.

Support for Ubuntu 16.04 is limited to console-only (server edition). Installation of kernel version 4.15 or higher is necessary for the modified gpio-f7188x driver.

我们已经为交付更新了驱动程序。如果您想从原始内核自定义GPIO驱动程序以实现全部引脚的激活，可以按照以下步骤操作：

We have already updated the driver for delivery. If you wish to customize the GPIO driver from the vanilla kernel for complete pin activation, you may follow these steps: 


<pre>
#Only required on Ubuntu 16.04
sudo apt-get update
sudo apt-get install linux-image-generic-hwe-16.04 linux-headers-generic-hwe-16.04
</pre>

需要 DKMS 来安装修改过的 gpio-f7188x 驱动程序， Need DKMS for modificated gpio-f7188x driver:
<pre>
sudo apt-get install dkms
</pre>

安装修改过的 gpio-f7188x 驱动程序，Install modificated gpio-f7188x driver:
<pre>
git clone https://github.com/ariaboard-com/gpio-f7188x-alt.git
cd gpio-f7188x-alt
make
sudo make dkms
echo gpio-f7188x-alt | sudo tee -a /etc/modules
</pre>

==GPIO 控制 GPIO Control==
可用的GPIO接口 Available GPIOs:
* GPIO 0-7
* GPIO 10-17
* GPIO 20-27
* GPIO 50-57
* GPIO 60-67
* GPIO 70-77
* GPIO 80-87
* GPIO 90-97

GPIO芯片驱动已经是通过kernel模块集成，操作GPIO可以有多种方法。在这个例子中，我们选择使用 <code>sysfs</code>（以GPIO 12和55为例）作为我们的操作方法：

请注意，使用这种方法控制GPIO需要具有root权限。

The GPIO chip driver is already integrated through the kernel module, There are several methods for operating GPIOs. In this instance, we are utilizing <code>sysfs</code> as our method of choice (with GPIO 12 and 55 as examples):

Note that root permission is necessary to control GPIOs using this approach.

Test Output pin 12:
<pre>
sudo chmod a+rw /sys/class/gpio/export
echo 12 > /sys/class/gpio/export #Export GPIO:
echo out > /sys/class/gpio/gpio12/direction #Output
echo 1 > /sys/class/gpio/gpio12/value #Set output state
</pre>

Test Input pin 55:
<pre>
echo 55 > /sys/class/gpio/export #Export GPIO:
echo in > /sys/class/gpio/gpio55/direction #Input
echo 1 > /sys/class/gpio/gpio55/active_low #Active Low (if needed)
cat /sys/class/gpio/gpio55/value #Get input state
</pre>

===GPIO 对应表格， GPIO Table===
{| class="wikitable" style="text-align:center;"
|-
| colspan="5" | GPIO Input
|-
| Item
| style="text-align:left;" | Fuction
| direction
| GPIO(F81966D-I)
| Active
|-
| 1
| style="text-align:left;" | DI1
| Input
| GPIO60
| L
|-
| 2
| style="text-align:left;" | DI2
| Input
| GPIO61
| L
|-
| 3
| style="text-align:left;" | DI3
| Input
| GPIO62
| L
|-
| 4
| style="text-align:left;" | DI4
| Input
| GPIO63
| L
|-
| 5
| style="text-align:left;" | DI5
| Input
| GPIO07
| L
|-
| 6
| style="text-align:left;" | DI6
| Input
| GPIO64
| L
|-
| 7
| style="text-align:left;" | DI7
| Input
| GPIO53
| L
|-
| 8
| style="text-align:left;" | DI8
| Input
| GPIO54
| L
|-
| colspan="5" | GPIO Output
|-
| 9
| style="text-align:left;" | DO1
| Output
| GPIO12
| H
|-
| 10
| style="text-align:left;" | DO2
| Output
| GPIO13
| H
|-
| 11
| style="text-align:left;" | DO3
| Output
| GPIO97
| H
|-
| 12
| style="text-align:left;" | DO4
| Output
| GPIO70
| H
|-
| 13
| style="text-align:left;" | DO5
| Output
| GPIO71
| H
|-
| 14
| style="text-align:left;" | DO6
| Output
| GPIO72
| H
|-
| 15
| style="text-align:left;" | DO7
| Output
| GPIO73
| H
|-
| 16
| style="text-align:left;" | DO8
| Output
| GPIO74
| H
|-
| colspan="5" | GPIO Feedback
|-
| 17
| style="text-align:left;" | DOI1
| Input
| GPIO55
| L
|-
| 18
| style="text-align:left;" | DOI2
| Input
| GPIO56
| L
|-
| 19
| style="text-align:left;" | DOI3
| Input
| GPIO50
| L
|-
| 20
| style="text-align:left;" | DOI4
| Input
| GPIO57
| L
|-
| 21
| style="text-align:left;" | DOI5
| Input
| GPIO84
| L
|-
| 22
| style="text-align:left;" | DOI6
| Input
| GPIO85
| L
|-
| 23
| style="text-align:left;" | DOI7
| Input
| GPIO86
| L
|-
| 24
| style="text-align:left;" | DOI8
| Input
| GPIO87
| L
|-
| colspan="5" | MVB Interrupt
|-
| 27
| style="text-align:left;" | MVB INT
| Input
| GPIO77
| L
|-
| colspan="5" | CF Card Insert Detection
|-
| 28
| style="text-align:left;" | CF DET
| Input
| GPIO78
| L
|}

==串口 Serial Port==
* <code>/dev/ttyS0</code> 对应面板上的COM A， <code>/dev/ttyS0</code> coresponds to Front Panel COM A.

可以通过以下方式操作串口：The serial port can be operated in the following way:

<pre>
#!/bin/bash

# Set up the serial port
SERIAL_PORT="/dev/ttyS0"
BAUD_RATE="9600"

# Configure serial port settings
stty -F $SERIAL_PORT cs8 $BAUD_RATE ignbrk -brkint -icrnl -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke noflsh -ixon -crtscts

# Sending a test message to the serial port
echo "Hello COM A" > $SERIAL_PORT

# Reading the response from the serial port
cat $SERIAL_PORT

# Close the serial port (optional, as the port will be closed automatically when the script ends)

</pre>

==千兆以太网口 Gigabit Ethernet Interfaces==
可用的接口：Available interfaces are:
* <code>ensp2n0</code>
* <code>ensp3n0</code>
* <code>ensp4n0</code>

Ubuntu 16.04 默认提供自动DHCP 地址获取。Ubuntu 16.04 ships with auto DHCP client by default.


==其他参考 Other References==
*python demo 程序: https://gist.github.com/c2h2/5cde90b1545c1b3d701936ebda68da6e